#ifndef WOOCHY_MOVMENT_SEQUENCE_H
#define WOOCHY_MOVMENT_SEQUENCE_H

#include "movement.h"
#include "cv.h"
#include "highgui.h"
#include <list>

class MovementSequence {
private:
	std::list<std::pair<int, Movement> > _mov_seq;
	CvFont _font;
	int insert_mov(int current_time, Movement &mov);
	int trim(int current_time);
protected:
	int draw_mov(Movement &mov, IplImage *img, int current_time);
public:
	MovementSequence();
	virtual ~MovementSequence();
	int update(int current_time, std::list<Movement> &new_movs);
	int update(int current_time, Movement &mov);
	size_t size() { return _mov_seq.size(); }
	int draw_movs(int current_time, IplImage *img);

#ifdef DEBUG
	int print_mov_seq(void);
#endif
};

#endif

